1. Field of the Invention
This application relates to the field of managing TCP communications.
2. Description of Related Art
The field of managing TCP communications has a history of rapid development. The speed and volume of TCP communications have increased dramatically every few years. The network infrastructure responsible for carrying TCP communications have not typically been required to process persistent state information. The processing of persistent state information such as TCP connection information has typically been handled by general purpose processors or specialized processors for routing (i.e., stand-alone network processors). However, the volume of TCP communications has increased so dramatically that it is not uncommon for services at the edge of a data center to require the management and processing of one million or more TCP connections. Firewalls, load balancers, etc., could also be enhanced if there were a capability to either terminate or shadow TCP connections at wire speeds.
FIG. 1 shows a TCP state management system of the prior art including a shared memory subsystem 12 and one or more general purpose processors 14. Each general purpose processor 14 includes memory 16 and processor 18. One advantage of using general purpose processors 14 is the achievement of a great deal of flexibility in the TCP protocol state management system. However, general purpose processors 14 are not as efficient as would be desired considering the great number of TCP communications typically needing to be processed today. The problem is expected to intensify in the future. Another disadvantage is that a router may be required to ensure transmission of each packet to the proper general purpose processors 14 for processing. Furthermore, a layer of software is typically added to handle the coherency conditions created by communication and data sharing between the general purpose processors 14. Complex coherency conditions can thereby be produced.